## Visual J++ Technology Preview 2 Readme

© 1998 Microsoft Corporation. All rights reserved.

Other product and company names herein may be the trademarks of their respective owners.

Visual J++® Readme includes updated information for the documentation provided with Microsoftâ Visual Studioä -- Development System for Windows® and the Internet. The information in this document is more up-to-date than the information in the Help system. Many of the issues outlined in this document will be corrected in upcoming releases.

This release is provided for evaluation purposes only. It contains pre-release code, documentation and specifications, and is not at the level of performance and compatibility of the final product offering.

This release is confidential and proprietary to Microsoft and its suppliers. Do not disclose or provide copies of this product or any information relating to it to any other party, or use it for any other purpose than as provided in the End User License Agreement without the prior written consent of Microsoft.

NEW The Visual J++ Technology Preview 2 documentation contains comprehensive documentation about the Visual J++ product and preliminary information about Windows Foundation Classes for Java (WFC). For the latest technical articles on WFC, including a walkthrough of a sample WFC application, a description of WFC graphics programming techniques, and more, be sure to visit the Visual J++ Technology Preview at http://www.microsoft.com/visualj/.

###

Contents - Click any of the items below

##### Setup Issues

Important This section contains vital information about installing Visual J++ Technology Preview 2. Please read all items carefully before you begin your installation. Note that Visual J++ Technology Preview 2 is not the final product, thus, you should use caution when installing on mission-critical systems, and back up your data prior to installing on such systems. For installation issues pertaining to the Visual Studio suite, see General Installation Notes.

> Compatibility Issues Between Web Downloads and the Pre-Release of Visual Studio

> Compatibility Issues Between the Visual J++ Technology Preview 2 or the March Pre-Release of Visual InterDev and the Pre-Release of Office 9.0

> Interactions with Visual J++ 1.1

> New User Accounts on Windows NT 4.0 Cannot Run Visual J++ Technology Preview 2

> Windows NT 5.0 Installation Not Supported by This Preview

> Remove Technology Preview 1 Through the Control Panel

> Windows 95 Registry Size: 64KB Limitation May Cause a Warning During Visual Studio Installation

> Internet Explorer 4.01 Setup May Require Two Reboots on Computers that have NT Option Pack 4.0 Installed

> Removal of Visual J++ Technology Preview 2 if Installed from Removable Media

##### Documentation Issues

> Some Documented Sample Programs Are Not Available

> Code Error in "Creating a Control" Topic

> Procedure for "Creating a Dynamic HTML Application" Topic has Documentation Error

> Procedure for "Using the Microsoft Transaction Server (MTS)" Topic has Documentation Error

##### Development Environment Issues

> QuickTips in Text Editor May Cause Unexpected Results

##### Control Issues

> Unlicensed ActiveX Controls Are Not Supported

> Controls Using Windowless Activation Not Supported

> WFC Controls not Currently Supported as Web Page Content

> Singlethreaded ActiveX Controls Not Supported

##### Code Development Issues

> Templates May Not Display Correctly if Format Settings Are Changed

> Projects Created With Code-Behind HTML Template Will Not Run Correctly on Client Computers if Only Standard Version of Internet Explorer 4.0 or 4.1 is Installed

> Java Files Created in Pre-Build Rules Are Not Built

##### Forms Designer Issues

> Copied Controls May Need New Event Handlers

> ComFailException May Occur on Forms that Use Data Access

> Live Control Development

##### Sample Issues

> Location and Instructions for Using Sample Programs

##### Windows Foundation Classes (WFC) Issues

> Changes to WFC in Technology Preview 2

##### Solution Packaging and Deployment

> Deployment of Server-side Java COM Components in Java Packages

> Registration of Java COM Classes Packaged as a DLL Fails

### Setup Issues

#### Compatibility Issues Between Technology Preview 2 and the Pre-Release of Visual Studio

Do not install either the web download of Microsoft Visual J++ Technology Preview 2 on the same system with any pre-release of Visual Studio 6.0 Enterprise Edition. Microsoft will not provide support for such configurations.

#### Compatibility Issues Between the Visual J++ Technology Preview 2 and the Pre-Release of Office 9.0

Installing a pre-release version Office 9.0 on the same computer that the Visual J++ Technology Preview 2 is installed will prevent all both applications from running correctly. This problem will be resolved in the final release of these products.

#### Interactions with Visual J++ 1.1

There are no known problems with installing this Technology Preview version of Visual J++ on the same computer as Visual J++ version 1.1, as long as you do not install them in the same directory. However, Visual J++ Technology Preview 2 does require the final version of Internet Explorer 4.01 or greater, which affects Visual J++ 1.1 debugging. This known problem with Visual J++ 1.1 debugging and pre-release versions of IE4.0 is described in the Microsoft Knowledge Base article "Q167998 Cannot Debug Visual J++ Programs On IE 4.0 Pre-Release." To view this article, see http://www.microsoft.com/kb/ and type Q167998 in the Search phrase field. To prevent this debugging problem, install Visual Studio 97 Service Pack 3 from http://www.microsoft.com/vstudio/sp3/.

#### New User Accounts on Windows NT 4.0 Cannot Run Visual J++ Technology Preview 2

Some functionality of this Visual J++ Technology Preview 2 may be impaired when using the product while logged in using a new user account other than the one under which it was originally installed. To workaround this problem, either use the account the product was installed from, or, reinstall the product separately for each user account on the computer.

#### Windows NT 5.0 Installation Not Supported by This Preview

Microsoft Windows NT 5.0 installations are not supported by Visual J++ Technology Preview 2. Setup will fail if attempted on a Windows NT 5.0 system. You must have either Windows 95, Windows 98, or Windows NT 4.0 with Service Pack 3 installed to run this product.

#### Remove Technology Preview 1 Through the Control Panel

To fully uninstall Visual J++ 6.0 Technology Preview 1, you must use the Windows Control Panel. Select Add/Remove Programs from the Control Panel, and double-click "Microsoft Visual J++ 6.0." When prompted, select Remove All.

#### Windows 95 Registry Size: 64KB Limitation May Cause a Warning During Visual Studio Installation

A 64 KB limitation in the Windows 95 system registry may cause a warning to appear when you install Visual Studio.

As you install Visual Studio on a Windows 95 computer, the Installation Wizard checks the size of the system registry. If the wizard does not find enough available registry space, it will generate the following message:

> Setup has detected that your system may not have enough registry database space available for a full installation. It is recommended that you read the Readme topic Windows 95 Registry Size before continuing. Continue with Setup?

You may ignore this message and proceed with the Visual Studio installation.

To increase the available space in your system's registry, consider the following:

1. Shorten the installation path for Visual Studio.
2. Uninstall programs you no longer use.
3. Uninstall, then reinstall the current programs to shorter installation paths.

#### Internet Explorer 4.01 Setup May Require Two Reboots on Computers that have NT Option Pack 4.0 Installed

If you have previously installed the NT Option Pack 4.0 and are prompted by the Installation Wizard to upgrade Internet Explorer, you may see the following message after IE reboots the system the first time:

"Some services could not be started. Setup needs to reboot your system in order to start the services."

If you experience this problem, you should NOT continue with the Installation Wizard. Accept the IE 4.0 dialog and reboot. Upon the subsequent reboot, launch Visual Studio setup again. Setup will continue where it left off.

#### Removal of Visual J++ Technology Preview 2 if Installed from Removable Media

If you installed Visual J++ Technology Preview 2 from a removable media drive, such as an Iomega Jaz drive, and you do not have the disk from which it was installed, you should use the following steps to remove the product:

1. On the Start menu, click Settings and then click Control Panel.
2. On the Control Panel, double-click Add/Remove Programs.
3. On the list of program choices, select Microsoft Visual J++ 6.0 and click Add/Remove.
4. Click Remove All. The Uninstall dialog box appears.
5. In the Uninstall dialog box, click Yes. The Setup Message dialog box appears.
6. In the Setup Message dialog box, click Cancel to continue removing the product, or insert the source disk in your removable media drive. Click OK.

   The Setup Message dialog box appears again.

7. Click Yes to continue with the removal of this Technology Preview without the removable media source disk.

   Clicking No will allow you to cancel the removal.

   ### Documentation Issues

   #### Some Documented Sample Programs Are Not Available

   Some of the program samples listed in the documentation are not yet available. This is a known problem and will be corrected in a later release.

   #### Code Error in "Creating a Control" Topic

   The topic, "Creating a Control," contains a code error. In step 4 of the procedure, "To add an event handler," the code to type should be:

   edit1.setText("Position = " + HScrollBar.getValue());

   #### Procedure for "Creating a Dynamic HTML Application" Topic has Documentation Error

   The topic "Creating a Dynamic HTML Application" contains an error. In step 4 of the procedure, "To view the sample code in your DHTML class," the generated source code begins program execution at the initForm method.

   #### Procedure for "Using the Microsoft Transaction Server (MTS)" Topic has Documentation Error

   The topic "Using the Microsoft Transaction Server (MTS)" contains an error. Step 5 of the procedure has been revised and should read, "In the Arguments box, type /p:"MTS Package name", where MTS Package name is the name of the MTS package containing your component. Also, make sure that there are no spaces in this argument."

   ### Development Environment Issues

   #### QuickTips in Text Editor May Cause Unexpected Results

   The QuickTips feature in the Text Editor allows you to quickly evaluate any variable or expression by holding the cursor over any code element. This is similar to the behavior of QuickTips in the Visual Basic development environment; however, there is one important distinction. In some cases, QuickTips in the Text Editor will evaluate an entire line of code as if it were an expression, causing the code to execute in order to return a result. For example, holding the cursor over a line containing a Terminate method will cause the method to be executed, in this case terminating the application.

   This behavior is by design, but may be unexpected if you are used to the behavior of Visual Basic's QuickTips.

   ### Control Issues

   #### Unlicensed ActiveX Controls Are Not Supported

   Unlicensed ActiveX controls are not supported in this Technology Preview version of Visual J++.

   #### Controls Using Windowless Activation Not Supported

   Controls using windowless activation are not supported in this Technology Preview of Visual J++.

   #### WFC Controls not Currently Supported as Web Page Content

   Problems may occur when a WFC control is placed onto an HTML document. WFC controls cannot yet be hosted directly on HTML documents. This is a known issue and will be addressed in a later release.

   #### Singlethreaded ActiveX Controls Not Supported

   Technology Preview 2 of Visual J++ does not fully support singlethreaded ActiveX controls. While the controls may be viewed on the Toolbox, placement of a singlethreaded control onto a form will cause an error dialog box to display and the control will be rejected. This is a known problem and will be corrected in a later release.

   ### Code Development Issues

   #### Templates May Not Display Correctly if Format Settings Are Changed

   By default, all templates are formatted with tabs (not spaces). If you want to change the format settings to use spaces instead of tabs, the templates will still have tabs in them. The workaround for this is to load the actual template .java file and then save it using tabs instead of spaces.

   #### Projects Created With Code-Behind HTML Template Will Not Run Correctly on Client Computers if Only Standard Version of Internet Explorer 4.0 or 4.1 is Installed

   Projects created with the Code-Behind HTML template will not run correctly on client computers that have only the Standard version of Internet Explorer 4.0 or 4.1 installed. These installations much be updated to include the same version of the Microsoft Vitural Machine for Java and the Windows Foundation Class Libraries that are installed with this product.

   #### Java Files Created in Pre-Build Rules Are Not Built

   Java files that are created in pre-build rules will not be built the first time the project is built. An example of this would be a project with a pre-build rule that uses jactivex to create Java wrappers. The first time the build is run, the new Java wrappers will appear in the project, but will not be built. Building a second time will build the new files.

   Workarounds for this are:

   1. Build the project a second time; now that the new Java files are there, they will build.
   2. Create dummy Java files matching the names of the files that will be created in the pre-build rules.

   ### Forms Designer Issues

   #### Copied Controls May Need New Event Handlers

   When you copy and paste a control in the Forms Designer, the new copy of the control will, by default, have its events handled by the same handler methods as the original control. To create new handlers for the new control's events, follow these steps:

   1. Select the new control in the Forms Designer.
   2. In the Properties window, click the Events button to display the event handlers for the control.
   3. Highlight each of the handler names in the right column and, once selected, delete them.
   4. Add new handlers.

   #### ComFailException May Occur on Forms that Use Data Access

   Under some conditions a ComFailException may be thrown on the finalization of a form that uses data access. The work-around is to avoid closing the recordset and connection objects that are used on the form, and instead let the Java VM garbage collection shut the objects down. The connection to the database will still be closed, but the exception should not occur.

   #### Live Control Development

   A control in development can be hosted on a form that exists in the same solution as the control. Changes to a control, however, will not be reflected in the hosting form's designer until the control's project is rebuilt, and the designer is closed and reopened.

   ### Sample Issues

   #### Location and Instructions for Using Sample Programs

   Please note that Visual J++ samples for Technology Preview 2 are currently only available from the Visual J++ Web site at http://www.microsoft.com/visualj. Please follow the links to download and install the samples. Be sure to revisit our Web site frequently for updates.

   ### Windows Foundation Classes (WFC) Issues

   #### Changes to WFC in Technology Preview 2

   As we strive to improve the quality of the Microsoft Windows Foundation Classes between the various Betas, many things have changed that will make code written against Microsoft Visual J++ Technology Preview 1 not compile in Technology Preview 2.

   The following is a list of some of the more common things that users will run into:

   - The package name for WFC has changed. Instead of being wfc.*, it is now com.ms.wfc.*. For example, Button used to be wfc.ui.Button, it is now com.ms.wfc.ui.Button. The import statement at the top of all your Technology Preview 1 files will need to be changed to reflect this.
   - Many properties, methods, and events have changed names. Often, they only need to be renamed, such as changing getAlignText to getTextAlign (typically to be more consistent between controls), but sometimes multiple properties have been merged into one property, or one property is broken into multiple properties. An example of the combining multiple properties would be the "center", "stretch", and "autoSize" properties becoming the "sizeMode" property for the PictureBox control.
   - Forms that contain resource files (images and so forth) will not load in Technology Preview 2. To fix this, load the form without it's resource file, and re-add the resources. The new resource file will contain the correct references.
   - The constructors for many objects have changed. Most notably, the Font object now has a different set of constructors.
   - Control.setStyle is no longer public. The functionality of this method is exposed in other properties.

   ### Solution Packaging and Deployment

   #### Deployment of Server-side Java COM Components in Java Packages

   If you implement a COM class in Java, as part of a Java package, and then deploy it as a server component to be called from an ASP page, running the ASP page will fail as the COM server does not get registered. This is because the Microsoft development environment currently does not create the correct directories required for the Java package.

   The Java class does not get registered. If you try to register it by hand using VJReg.exe, you get an error back saying "The internal class name "X.Y.Class1' does not match the file or directory name of class file…' and the class cannot be loaded. If you manually create the directory structure corresponding to your Java package under the deployment root directory and then register Class1.class, it registers successfully.

   #### Registration of Java COM Classes Packaged as a DLL Fails

   If you implement a COM class in Java, package it in a DLL, and then include this DLL as an additional file in a setup (.exe) file, the DLL will fail to register correctly when the setup (.exe) is run. As a work around, do not package the COM class as a DLL, but include it in the setup (.exe) as a CLASS file, and it will be correctly registered.